'''
Created on 8 oct. 2012

@author: MARTINS-N
'''

import random

def pwd_encode(pwd,key):
    Hash = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "-", "_"]
    pwd_c="#1"
    i=0
    while(i<len(pwd)):
        code_1 = ord(pwd[i])
        code_2 = ord(key[i])
        code_3 = code_1 / 16
        code_4 = code_1 % 16
        pwd_c = pwd_c + (
            Hash[( code_3 + code_2 % len(Hash)) % len(Hash) ]
            +
            Hash[( code_4 + code_2 % len(Hash)) % len(Hash) ]
            )
        i=i+1
    return pwd_c

def random_str(lenght):
    i = 0
    key = ""
    while(i<lenght):
        key += chr(random.randint(ord("a"),ord("z")))
        i += 1
    return key
